Standard document rendering systems often use page description languages to specify how marks are to be placed in a target representation. In the case of printers, the target representation is a bit map that can be used by a marking engine to deposit toner on paper. In the case of a plotter, the target representation is a series of instructions to a robotic pen, which will deposit ink on paper. In the case of a PDF renderer, the page description language is translated into a series of drawing commands that can be used by another rendering program at a later time.
Such page description languages fall into two broad categories: rasters and drawings systems. Rasters are by far the simpler of the two, consisting of a set of pixel values that are arrayed in rows and columns, and the pixel values are written onto the page according to a color model. Drawing systems are more complex, allowing various types of imaging operations such as line and curve drawing, color filling, coordinate transformations, and placement of rasters. As such, they are generally a superset of raster page descriptions. However, they also can be transformed into raster descriptions once a resolution and size have been chosen.
Drawing systems may include drawing commands that overwrite the same pixel with different values. Various algorithms can be chosen for resolving such conflicting commands in the final page image raster. The most common, and intuitive, of these models is the so-called “painter's algorithm”, which uses the results of the most recently issued drawing command as the proper pixel value. For example, if three lines are drawn into the same image, the color of the most recent line will dictate what the pixel value will be for any pixel where the lines intersect. A slight expansion of the painter's algorithm involves assigning an “alpha” value to each pixel being drawn by a command, which indicates a level of transparency for the pixel data. A 50% alpha value would take the previous pixel value, and the new pixel value, and produce a color composed by a mathematical mixing of the existing and new pixel values.
JPM is an image format that includes both raster elements and a very simple drawing system. The JPM drawing system allow placement, scaling, and masking of elements. Like the drawing systems discussed above, it includes alpha blending of placed images.
Significant prior art in the area of image segmentation for mixed raster content documents exists. These are limited to segments that worked from scanned images. U.S. Publication No. 20050116963 A1, entitled “Processing Complex Regions of Illustration Artwork,” filed Jan. 4, 2005, discloses the construction of planar maps given complex lists of drawing commands. However, the prior art techniques are used to speed rasterizers by flattening complex areas.